home *** CD-ROM | disk | FTP | other *** search
- 100 dim n1(50), cw$(50), dur(50,8),bb(510)
- 150 poke53281,6:poke53280,11:poke646,15
- 160 sp$=" ":printchr$(142)
- 200 gosub60000
- 300 goto6000
- 400 for l=54272to54296:pokel,0:nextl
- 500 s=54272:pokes+5,15:pokes+24,15:pokes+6,40
- 600 pokes+21,57:pokes+22,100:pokes+23,8
- 650 print"[147]each practice session lasts for"
- 660 print"two minutes."
- 700 print"suggested code speeds are from 2 to 15"
- 710 print"words per minute"
- 800 input"what code speed do you wish?";speed
- 801 ifsp<2orsp>15thenprint" please enter a value between 2 and 15.":goto800
- 900 number=int(speed*10.)
- 910 ifspeed>4then950
- 920 ss=4:ts=45:su=2800:goto1000
- 950 ifspeed>10then980
- 960 ss=6:ts=65:su=1000:goto1000
- 980 ss=5:ts=60:su=1250
- 1000 gosub 3500
- 1050 poke53280,6:poke53281,5:poke646,0
- 1100 print"[147]get ready--code practice begins in 5 seconds"
- 1105 print:print" [press 'q' to exit practice]":print
- 1200 for tt=1to2000:nexttt
- 1250 gosub1400
- 1260 printchr$(13);"practice this group again (y/n)"
- 1270 poke198,0:wait198,1:getan$:ifans$="y"then900
- 1280 ifans$="n" goto300
- 1290 goto 1270
- 1310 :
- 1400 :
- 1450 li=1:ag=number:rem ifsv=9orsv=10thenag=ag-30
- 1500 foria=1toag
- 1600 ib=bb(ia):ifli+len(cw$(ib))>38thenprint:li=1
- 1610 printcw$(ib);sp$;:li=li+len(cw$(ib))+1
- 1700 foric=1ton1(ib)
- 1750 ifpeek(198)<>0thengetx$:ifx$="q"thenreturn
- 1800 forid=1to7*dur(ib,ic)*ss/speed
- 1900 pokes,31:pokes+1,21:pokes+3,8:pokes+2,0:pokes+4,65:next
- 2000 forid=1tots/speed:pokes+4,64:nextid
- 2100 nextic
- 2200 foric=1tosu/speed:nextic
- 2300 nextia
- 2350 return
- 2800 :
- 2900 for i=1to42
- 3000 readn1(i),cw$(i)
- 3100 for j=1ton1(i)
- 3200 read dur(i,j)
- 3300 nextj:nexti
- 3400 return
- 3500 :
- 3600 fori=1tonumber
- 3700 bb(i)=int(rnd(0)*nr)+sw
- 3800 nexti
- 3900 return
- 4100 data 1,e,1,2,i,1,1,1,t,3,2,m,3,3,2,a,1,3,2,n,3,1
- 4200 data 3,d,3,1,1,3,g,3,3,1,3,k,3,1,3,3,o,3,3,3,3,r,1,3,1
- 4250 data 3,s,1,1,1,3,u,1,1,3,3,w,1,3,3,4,b,3,1,1,1
- 4300 data 4,c,3,1,3,1,4,f,1,1,3,1,4,h,1,1,1,1,4,j,1,3,3,3
- 4350 data 4,l,1,3,1,1,4,p,1,3,3,1,4,q,3,3,1,3,4,v,1,1,1,3
- 4400 data 4,x,3,1,1,3,4,y,3,1,3,3,4,z,3,3,1,1,5,1,1,3,3,3,3,5
- 4500 data 2,1,1,3,3,3,5,3,1,1,1,3,3,5,4,1,1,1,1,3,5,5,1,1,1,1,1
- 4600 data 5,6,3,1,1,1,1,5,7,3,3,1,1,1,5,8,3,3,3,1,1,5,9,3,3,3,3,1,5
- 4700 data 0,3,3,3,3,3,6,period,1,3,1,3,1,3,6,comma,3,3,1,1,3,3,6
- 4800 data?mark,1,1,3,3,1,1,5,slash,3,1,1,3,1,8,goof,1,1,1,1,1,1,1,1,1," ",0
- 4900 open15,8,15,"r0:hello connect=hello connect":input#15,er:close15
- 4910 print"[147]";:ifer<>63thenend
- 4920 load"hello connect",8
- 6000 :
- 6040 :
- 6080 :
- 6085 poke53280,6:poke53281,5:poke646,0
- 6090 print"[147] cw trainer menu:"
- 6100 print"choose from an item below:"
- 6110 print: rem fori=1to2500:nexti
- 6120 print"1. practice on letters: a,e,i,m,n,t"
- 6140 print"2. practice on letters: d,g,k,o,r"
- 6160 print"3. practice on letters: b,s,u,w"
- 6180 print"4. practice on letters: c,f,h,j"
- 6200 print"5. practice on letters: l,p,q,v"
- 6220 print"6. practice on letters: x,y,z"
- 6240 print"7. practice on numbers: 1 through 5"
- 6260 print"8. practice on numbers: 6 through 0"
- 6280 print"9. practice on punctuation: period,"
- 6290 print"comma, ? mark, slash, goof (error)"
- 6300 print"10. random practice on all of the above"
- 6320 print"11. quit for now (return to loadstar)":print
- 6340 input"which do you want";sv$:sv=val(sv$)
- 6345 ifsv<1orsv>11thenprint"[145]";:goto6340
- 6360 onsvgoto6400,6450,6500,6550,6600,6650,6700,6750,6800,6850,4900
- 6400 sw=1:sx=6:nr=6:gosub3500:goto400
- 6450 sw=7:sx=11:nr=5:gosub3500:goto400
- 6500 sw=12:sx=15:nr=4:gosub3500:goto400
- 6550 sw=16:sx=19:nr=4:gosub3500:goto400
- 6600 sw=20:sx=23:nr=4:gosub3500:goto400
- 6650 sw=24:sx=26:nr=3:gosub3500:goto400
- 6700 sw=27:sx=31:nr=5:gosub3500:goto400
- 6750 sw=32:sx=36:nr=5:gosub3500:goto400
- 6800 sw=37:sx=41:nr=5:gosub3500:goto400
- 6850 sw=1:sx=41:nr=41:gosub3500:goto400
- 60000 rem
- 60010 rem--subrutine to initialize screen and start program
- 60030 rem
- 61000 print"[147]morse code training program"
- 61020 print"by terry m. brown"
- 61060 print"";spc(25);"[144][162][162][162][162][162][162][162][162][162]"
- 61080 printspc(29);" [146]"
- 61100 printspc(12);"[169] [146]"
- 61120 printspc(8);"[187][172][146] [146] [223][169]"
- 61140 print"[168][168][168][168][168][168][168][168][144][190][188][146] [169] [223][146] [169][223][146]"
- 61160 printspc(7);" [146]"
- 61180 print"[158]morse code key"
- 61200 gosub2800
- 61220 data 4,10,11,12,1,42,16,10,7,1,42,2,12,42,17,13,6
- 61240 number=17
- 61250 speed=7
- 61260 fori=1tonumber
- 61280 readbb(i)
- 61300 nexti
- 61400 for l=54272to54296:pokel,0:nextl
- 61500 s=54272:pokes+5,15:pokes+24,15:pokes+6,40
- 61600 pokes+21,57:pokes+22,100:pokes+23,8
- 61650 print"";spc(10);
- 61700 printtab(15)"press a key"
- 62700 poke198,.:wait 198,1:poke198,.
- 63000 return
-